home *** CD-ROM | disk | FTP | other *** search
Text File | 1986-08-23 | 36.9 KB | 1,371 lines |
- SNAP!
-
- dBASE II and dBASE III Documentation System
- Written by Walter J. Kennamer 74025,514
-
-
-
- ╔════════════════════════════════════════════════════════════════════════╗
- ║ Copyright (c) 1986 by Walter J. Kennamer ║
- ║ All rights reserved. ║
- ║ ║
- ║ The accompanying software and this documentation may be used and ║
- ║ reproduced without charge; except it may not be sold, and may only be ║
- ║ distributed intact. ║
- ║ ║
- ║ These are provided as is, without warranty of any kind. ║
- ║ ║
- ╚════════════════════════════════════════════════════════════════════════╝
-
-
- SNAP! makes documenting dBASE II and dBASE III programs a snap. Written in
- Turbo Pascal, SNAP! is designed to produce technical documentation for an
- entire dBASE system, including:
-
- Variable cross-reference reports
- Tree structure of program and database usage
- Data dictionary
- Index file summary
- Format file summary
- Report form summary
- Procedure file summary (dBASE III only)
- Formatted source code listings
-
- In addition, on each program file, SNAP! can write a heading showing:
-
- Program name
- System name
- Author and copyright notice
- Which files call this program
- Which files this program calls
- Databases used
- Index files used
- Formats used
- Report forms used
- Procedures
- Memory files used
-
- Also, SNAP! can indent your source code and capitalize dBASE key words to
- make your code easier to read, understand and maintain.
-
- Unlike many other dBASE documentation systems, SNAP! documentation is
- system-wide. In other words, not only can it tell you where variable X was
- used in a particular program, it can cross-reference all occurrences of
- variable X anywhere in the program system you are documenting. You merely
- enter the "top" program file name, and SNAP! does the rest. Of course, you
- may also document a single program if you wish.
-
-
- Getting Started
-
- First, make a backup copy of your program files. I have tried to test
- SNAP! on a variety of hardware and software combinations, and there
- shouldn't be any danger, but I would feel awful if anyone lost program
- files due to some curious combination of resident programs, unusual
- equipment and sunspot activity, not to mention (gasp!) "features."
-
- Basic Operation
-
-
- SNAP! is very easy to use. If you accept the program's default options,
- you only have to enter the following information on the Top file screen:
-
- "Top" file name
- System name
- Author
- Paths for input, output files and SNAP! overlay files
-
- You can press F4 to view the other options, or F2 to begin documenting
- right away. The line at the bottom of the screen tells you which function
- keys are active. At any point, you can press the F1 key to receive
- context-sensitive help. Help is available for each field.
-
- The SNAP! system is composed of the following files:
- SNAP.COM -- main program file
- SNAP.00x -- one or more overlays, starting with SNAP.000
- SNAP.HLP -- help file
- SNAP.DOC -- this documentation file
- DBxWORDS.TXT -- key word files
-
-
- Searching the Program Tree
-
- SNAP! assumes that you want to document not only the Top file, but all
- programs it calls, all programs called by programs that Top calls, and so
- on. In fact, SNAP! will search the program tree for all programs,
- databases, index files, report forms, format files and memory files as it
- prepares system documentation. You never need to specify more than the top
- program file name.
-
- If you choose not to search the tree, only the specific file you enter will
- be documented. Thus, you can limit documentation to a particular file or a
- branch of the program tree by varying either the file you input as Top or
- the search tree parameter.
-
- Note that SNAP! does not track "SET DEFAULT TO x" statements, but always
- expects to see files with no drive designations on the default drive.
-
-
- Author and Copyright Holder
-
- Enter the author and copyright holder in these fields. This information is
- used only in the program headings, and may be omitted if you choose not to
- write program headings (you make that choice on the Options screen--the one
- after the Top file menu). If you enter either author or holder, but not
- both, the program assumes that they are the same.
-
-
- Paths
-
- The Top file menu screen has three fields for path information--the path to
- the input, output and overlay files. Your response should be a valid
- MS-DOS path, with or without drive designation. It doesn't matter if you
- omit the final backslash (e.g., C:\SNAP is valid, as is C:\SNAP\ or \SNAP).
-
-
- SNAP! looks for its help file, SNAP.HLP, in the same directory as the SNAP!
- overlays.
-
- If the "Top" file you specify cannot be found, or if the overlay files are
- not where you say they are, SNAP! exits back to DOS. If the output
- directory does not exist, SNAP! will create it.
-
- If your input and output paths are different, SNAP! will not modify your
- original source code files in any way. Only the output files will contain
- capitalized key words, indents, headings and so on.
-
- On the other hand, if the input and output paths are the same, SNAP! adds
- .BAK extensions to your original input Cfiles and creates modified output
- files with the original names. For example, if one of your input programs
- was named EDIT.PRG, after running SNAP! it will be called EDIT.BAK and a
- new, modified EDIT.PRG will be in the directory. This scheme works fine as
- long as all your input files have unique names (not counting the
- extension). Otherwise, all but the last non-unique input file will be lost
- (though the modified output files will still be there). The best idea is
- never to direct output to the input directory if the first eight characters
- of all of your program files are not unique.
-
- SNAP! never modifies database, index, format, form or memory files.
-
- dBASE II or dBASE III?
-
- At the bottom of the Top file menu, SNAP! asks if this is a dBASE III
- system. SNAP! needs this information since dBASE III uses a different
- internal format for database and index files, as well as different key
- words. The current version of SNAP! cannot read Clipper index files, but
- otherwise will handle Clipper source code and databases without
- difficulty. SNAP! will automatically detect Foxbase index files and
- document them properly.
-
- Ignoring Drive Designations
-
- Sometimes you may want SNAP! to disregard explicit drive designations when
- searching for program or other files. A choice off the options menu (the
- second screen after the greeting) instucts SNAP! to drop any drive
- designations before attempting to find a file. As an example, you may have
- written a backup routine to copy a database to B:BACKUP.DBF. If you would
- like SNAP! not to try to find that file on the B: drive, choose the option
- to ignore drive designations.
-
- Saving Default Choices
-
- As you use SNAP!, you may wish to modify the default values for certain
- fields. For example, you may want to set the overlay path to \SNAP, or the
- author and copyright holder to your name. Press F5 to save the current
- values of each field in a file named SNAP.CFG. If SNAP! finds this file in
- the current directory when you start the program, its values will be
- entered as defaults. Otherwise, if SNAP.CFG does not exist or cannot be
- found, SNAP! resorts to standard default values.
-
-
-
-
- Status Reports
-
- As SNAP! documents your programs, it updates a status screen that tells you
- how much progress it has made. The screen shows the file that SNAP! is
- currently documenting, the number of lines in the file, and the pass
- number. (If a file is called from more than one parent file, it may need
- to be documented more than once. The pass number tells you how many passes
- SNAP! has made through an individual program. It should not normally be
- greater than 2 or 3.)
-
- In addition, if you choose any option that modifies source code (heading,
- indentation, key word capitalization) or if you choose to display the
- cross-reference report, SNAP! will display a more elaborate screen
- indicating how many programs, databases, indexes, format files, report
- forms and variables it has found, along with the total number of program
- lines documented so far, and the amount of free memory available.
-
- If SNAP! identifies any errors during its run, it will print a brief error
- message in a separate window in the upper right corner of the screen. All
- error messages are also echoed to the ERROR.DOC file.
-
-
-
-
- Reports and Outputs
-
-
- SNAP! can produce any combination of several reports. Each report is
- optional and can be selected or supressed on the Options Screen. However,
- some reports (e.g. Data dictionary, Index summary) require you to search
- the tree rather than document a single program.
-
- SNAP! does not attempt to resolve macro substitutions. For example, if it
- sees a macro where it expects a database, it reports the macro as a
- database name. It is your responsibility to identify what value the macro
- might have at run time. The exception to this general rule is that SNAP!
- will try to remove macros that look like drive or path designations. For
- example, if the following statement is in one of your programs:
-
- USE &MPATH.DATABASE
-
- SNAP! will detect the macro and remove it before trying to find
- DATABASE.DBF.
-
- Each report, other than a file heading, is displayed on the screen as it is
- echoed to a file. The program contains default filenames (e.g., XREF.DOC
- for the cross-reference report), but you can change them if you wish.
-
-
- File Headings
-
-
-
- One of the most useful SNAP! outputs is a heading written to each file in
- the system. Each heading indicates:
-
- Program name
- System name
- Copyright notice
- Author
- Which programs this program calls
- Which programs call this program
- Databases, index files, report forms, format files and memory
- files used by this program
- Date and time documented.
-
- A sample heading is included in Appendix A. The sample heading indicates
- that TODOINP.PRG is called by TODOMENU, calls TIME and TESTDATE, uses a
- file whose name is contained in S:TDFILE with index TODO, and also uses the
- TODOINP format file. The heading also indicates the system name, author,
- copyright and date documented. You may want to add more information to the
- header, such as a brief narrative description of the program's purpose.
-
- If you choose to write headings on your source code files (or if you choose
- any other option that modifies the source code file), it is a good idea to
- send the output files to a different directory than the input files so that
- your original source code remains unchanged.
-
- If you choose to send output files to the input directory, your original
- source code file will be renamed with a .BAK extension. If you use
- extensions to distinguish between program files, some of your original
- source code files could be destroyed. For example, if your system uses the
- following program file names:
-
- SYSTEM.INP
- SYSTEM.EDT
- SYSTEM.RPT
- SYSTEM.DEL
-
- and so on, the output files containing the headings will retain these
- names. Each of the input files, however, will have been renamed to a file
- called SYSTEM.BAK, and only the last one will still exist when SNAP!
- completes. Therefore, you should send output files to a separate
- subdirectory if you use this naming convention.
-
- As always, you should make regular backups, and you should be especially
- careful to make a full backup of all your files before running SNAP!.
-
-
- Source Code Formatting Options
-
-
- SNAP! can also help format your source code to make it easier to read.
- SNAP! can recognize dBASE control structures and indent the program
- statements underneath them. All indentation is done with tab characters,
- one per level. Most text editors and word processors allow you to
- determine the number of spaces per tab, so the actual appearance of the
-
- code is still under your control. In addition, should you choose to use
- SNAP!'s source code printing routines, you can select the number of spaces
- to be inserted for each tab as the code prints.
-
- If you choose the indentation option, SNAP! will also scan your code for
- mismatched control structure terminators. For example, if your code has
- the following sequence:
-
-
- DO WHILE T
- statements
- .
- .
- .
- IF X = Y
- .
- .
- ENDIF
- ENDIF
-
-
- SNAP! will detect that the final statement should have been an ENDDO
- instead of an ENDIF and will display an appropriate error message.
-
- SNAP! will also capitalize dBASE key words found in your source code. Key
- words are stored in a file called DBxWORDS.TXT where x is a 2 or a 3
- depending on the version of dBASE you are using (you can also specify
- another file). SNAP! does not attempt to parse code statements to
- determine how a word is used, so if you use key words as variable or field
- names, they will also be capitalized. Should you wish not to capitalize a
- particular key word, you can either delete it from the DBxWORDS.TXT file,
- or "comment it out" by putting an asterisk before it in the file (e.g.
- RELEASE becomes *RELEASE).
-
- The key word file should contain one key word per line. Capitalization and
- order do not matter, though SNAP! runs marginally faster if the words are
- alphabetized.
-
- By inserting the correct characters in the key word file, you can cause
- certain key words or variables to be handled differently than normal. The
- following characters have a special meaning in the key word file when
- inserted immediately before a word:
-
- * Comments out the word. SNAP! acts as if it were not in the key
- word file at all.
- ! Capitalize, but do no cross-reference even when the option to
- cross-reference key words is in effect. You may want to use this
- character for often-used but uninteresting key words such as TO
- or, perhaps, SAY.
- @ Capitalize and always cross-reference this word, even when the
- option to cross-reference key words is not in effect. You might
- want to use this for especially important key words such REPLACE,
- SAVE, or QUIT.
-
-
- % Neither capitalize nor cross-reference, regardless of whether the
- options to capitalize or cross-reference key words are in
- effect. You may want to use this character for variables that
- you use frequently, but that you are not interested in
- cross-referencing--perhaps "i", "choice", "action", or "lineno".
- This will keep them from cluttering up the cross-reference report.
-
- The following examples illustrate how to use these special characters:
-
- *note
- !SAY
- @REPLACE
- %CHOICE
-
-
- Tree Structure Diagram
-
- If you choose the default option of documenting all programs in the tree,
- SNAP! will produce a chart showing which programs call which other programs
- and which programs use which databases. The tree diagram, like other SNAP!
- reports, appears on the screen and is echoed to a file (default name of
- TREE.DOC).
-
- While file names listed in the tree contain extensions, you can quickly
- tell which files are databases by the arrow ( --> ) just to the left of the
- filename.
-
- The tree report is illustrated in Appendix A.
-
-
- Data Dictionary
-
- The data dictionary report contains two parts: 1) the database structure
- for each database in the system and a list of programs which use it; and 2)
- a listing of each data field in the system and the databases that contain
- it.
-
- SNAP! identifies databases in three ways:
-
- 1) USE statements, but only those followed by a database name;
- 2) COPY TO statements, including COPY TO ... SDF. If the command
- copies to an SDF file that does not have an explicit extension,
- SNAP! supplies .TXT, otherwise SNAP! assumes databases to have
- .DBF extensions.
- 3) DELETE FILE xxx.DBF
-
- A statement that tests for the existence of a database (e.g. IF
- FILE("xyz")) will not by itself be identified as a database reference.
-
- A sample data dictionary report is included in appendix A.
-
-
- Index File Summary
-
-
- The index file summary lists each index file referenced in the system and
- attempts to show the fields it is indexed on and the files that use it.
- Clipper index files are in a different format than dBASE3 and are not
- recognized by SNAP! Foxbase index files are detected and documented.
-
- SNAP! identifies indexes in four ways:
-
- 1) INDEX ON xyz TO indexfile
- 2) USE xyz INDEX indexfile1,indexfile2,indexfile3 ...
- 3) SET INDEX TO indexfile1,indexfile2,indexfile3 ...
- 4) DELETE FILE xyz.NDX
-
- In cases 2 and 3, each index file will be separately identified and
- documented.
-
- A statement that tests for the existence of an index (e.g. IF
- FILE("xyz.NDX")) will not by itself be identified as an index reference.
-
- A sample index file summary in shown in Appendix A.
-
-
- Format File Summary
-
- SNAP! also produces a report showing each format file used in the system
- and the programs that call it. A sample report is in Appendix A.
-
- SNAP! identifies format files in two ways:
-
- 1) SET FORMAT TO xyz
- 2) DELETE FILE xyz.FMT
-
- In case 1, if this is a dBASE II system, SET FORMAT TO SCREEN and SET
- FORMAT TO PRINT are not flagged as references to format files.
-
- A statement that tests for the existence of an format (e.g. IF
- FILE("xyz.FMT")) will not by itself be identified as an format reference.
-
- Report Form Summary
-
- SNAP! also produces a report showing each report form used in the system
- and the programs that call it. A sample report is in Appendix A.
-
- SNAP! identifies report forms in two ways:
-
- 1) REPORT FORM xyz ...
- 2) DELETE FILE xyz.FRM
-
- A statement that tests for the existence of an form (e.g. IF
- FILE("xyz.FRM")) will not by itself be identified as an report form
- reference.
-
-
- Variable Cross-Reference Report
-
-
-
- Another useful report available through SNAP! is a variable cross-reference
- listing, showing line numbers for each program that references a particular
- variable. 'Variable' in this context includes field names, file names and
- anything else that isn't a key word, numeric constant, punctuation mark or
- quoted string.
-
- If elect ot display the variable cross-reference report (by responding 'Y'
- to the question on the options menu), you can view the Cross-reference
- Options Screen (press F4 from the options menu). The Cross-reference
- Options Screen allows you to select the type of "things" that will included
- on the cross-reference report. If this is a dBASE III system, you will
- have the option to include only PUBLIC variables. You also get the
- following choices, regardless of whether this is a dBASE II or a dBASE III
- program:
-
- Include other variables and tokens
- Include key words
- Include numeric constants
-
- Your responses to these prompts (and your use of special characters in the
- key words file) determine which words will Cappear on the cross-reference
- report.
-
- The cross-reference report interacts closely with the key word file.
- Specifically, the key word file is how SNAP! can tell what is a key word
- and what is not. Additionally, by inserting the correct characters in the
- key word file, you can cause certain key words or variables to be handled
- differently than usual. The following characters have a special meaning in
- the key word file when inserted immediately before a word:
-
- * Comments out the word. SNAP! acts as if it were not in the key
- word file at all.
- ! Capitalize, but do no cross-reference even when the option to
- cross-reference key words is in effect. You may want to use this
- character for often-used but uninteresting key words such as TO
- or, perhaps, SAY.
- @ Capitalize and always cross-reference this word, even when the
- option to cross-reference key words is not in effect. You might
- want to use this for especially important key words such REPLACE,
- SAVE, or QUIT.
- % Neither capitalize nor cross-reference, regardless of whether the
- options to capitalize or cross-reference key words are in
- effect. You may want to use this character to designate
- variables that you use frequently, but that you are not
- interested in cross-referencing--perhaps "i", "choice", "action",
- or "lineno".
-
- The following examples illustrate how to use these special characters:
-
- *note
- !SAY
- @REPLACE
- %CHOICE
-
- A sample cross-reference report is included in Appendix A.
-
-
- Source Code Printout
-
-
- When you have completed your program, you will probably want a listing of
- the source code to accompany the rest of your documentation. SNAP!
- provides a facility for formatting and printing dBASE source code files,
- and gives you a great deal of control over source code format. You can set
- the following parameters:
-
- Line width
- Page length
- Left and right margins
- Top and bottom margins
- Spaces per tab
-
- Include or suppress line numbers
- Printer setup string
-
- For example, you can set these values to leave plenty of room on the left
- side of the page so that your code will fit in a 3-ring binder.
-
- If a line of code exceeds the line width minus left and right margins,
- SNAP! will wrap it on the printout without messing up the page breaks.
- SNAP! also appropriately counts the wrapped line as one source code line,
- so that your cross-reference report still matches the printout.
-
- Each page of the printout contains a header showing the program name,
- system name, copyright notice, page number and date/time printed. The
- programs are printed in alphabetical order.
-
- This section of SNAP! will revert to default values if you enter an invalid
- set of parameters. For example, if the sum of your left and right margins
- exceeds your line width, SNAP! will set the line width and the margins to
- their default values. Similarly, SNAP! will reject top and bottom margins
- greater than page length, negative values, tab expansions greater than 12
- spaces, and so on.
-
- SNAP! prints a three-line heading on each page of the printout, showing
- program name, system name, copyright holder, date, time, and page number.
- The heading begins on the line immediately following the top margin you
- specify. Accordingly, if you use a top margin of 8 and a bottom margin of
- 8, with 66-line paper only 47 lines of code will be printed on each page
- (66 lines - 8 top margin - 8 bottom margin - 3 heading).
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Program Limitations
-
-
- SNAP! had the following design limitations when this documentation was
- written:
-
- Maximum program files: 256 in total, 64 called from a
- given file
- Maximum other files: 128 of each type (e.g. databases)
- Maximum variables: 999 throughout the system
- Maximum references to a variable: 128 per variable
- Maximum key words: 400 words
- Maximum length of key word: 15 characters
- Maximum levels of nesting: 20 levels
- Maximum number of database fields: 256 throughout the system
- Maximum length of filename: 16 characters (including path)
-
- These limitations are current as of March 31, 1986. You can verify them
- (it would be a good idea) by viewing the program limitations screen (Press
- F1 twice from the greeting screen).
-
- For example, the total number of different fields in all the databases used
- in the system cannot exceed 256. In practice, the limit you are most
- likely to encounter is the maximum number of references to a particular
- variable. Additional references generate a warning message and are not
- included in the cross-reference report, but otherwise do not hurt anything.
-
-
- ACKNOWLEDGMENTS
-
-
- Special thanks to the following for help designing and testing SNAP!:
- Paul Ferrara
- Peter Petto
- Dirk Gastaldo
- Opher Jackson
- Spence Lloyd
- Tom McSharry
- Marianne van Lier
-
- -------------------------------------------------------------------------------
-
-
- Appendix A -- Sample Reports
-
-
- File Header
-
-
- *:*********************************************************************
- *:
- *: Program: TODOINP.PRG
- *:
- *: System: TODO Management System
- *: Author: Walter J. Kennamer
- *: Copyright (c) 1984, Walter J. Kennamer
- *:
- *: Called by: TODOMENU.PRG
- *:
- *: Calls: TIME.PRG
- *: : TESTDATE.PRG
- *:
- *: Uses: &S:TDFILE.DBF
- *:
- *: Indexes: &S:DDNDX.NDX
- *:
- *: Formats: TODOINP.FMT
- *:
-
- *: Documented: 2/15/86 14:19
- *:*********************************************************************
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Tree Diagram
-
- System: TODO Management System
- Author: Walter J. Kennamer
- Tree Diagram for databases and program files.
- Date: 2/15/86
- Time: 14:22
-
-
- ---------------------------------------------------------------------------TO
- DO.PRG
- TODOMENU.PRG
- -->&S:TDFILE.DBF
- VERSION.PRG
- TDLOGO.PRG
- DEFAULT.PRG
- TDSETUP.PRG
- -->TODO.SKL
- -->&S:TDFILE.DBF
- GETDATE.PRG
- TIME.PRG
- TODOINP.PRG
- -->&S:TDFILE.DBF
- TIME.PRG
- TESTDATE.PRG
- TODOEDIT.PRG
- TIME.PRG
- TDMARK.PRG
- -->&S:TDFILE.DBF
- TIME.PRG
- NUMLIST.PRG
- TDEDIT.PRG
- -->&S:TDFILE.DBF
- TIME.PRG
- DELSKIP.PRG
- EDITEXIT.PRG
- ISEARCH.PRG
- TESTDATE.PRG
- EDITSRCH.PRG
- NUMLIST.PRG
- TIME.PRG
- EDITCHGE.PRG
- EDITDEL.PRG
- ISEARCH.PRG
- DELSKIP.PRG
- TDBROWSE.PRG
- -->&S:TDFILE.DBF
- TDPURGE.PRG
- -->HIST.DBF
- -->TODO.SKL
- -->&S:TDFILE.DBF
- TDREDATE.PRG
- -->&S:TDFILE.DBF
- TDCALPRM.PRG
- -->PRM.SKL
-
- -->CAL.PRM
- EDITHELP.PRG
- TODOPRT.PRG
- TIME.PRG
- PRTUNCMP.PRG
- -->&S:TDFILE.DBF
- PRINTER.PRG
- LATECOMP.PRG
- PRTCMP.PRG
- -->&S:TDFILE.DBF
- PRINTER.PRG
- SCREENPRT.PRG
- -->&S:TDFILE.DBF
- TODOCAL.PRG
- -->&S:TDFILE.DBF
- PRINTER.PRG
- TDCALPRM.PRG
- -->PRM.SKL
- -->CAL.PRM
- VERPRT.PRG
- -->PRM.SKL
- TDALARM.PRG
- -->&S:TDFILE.DBF
- DISPCAL.PRG
- TODOFIX.PRG
- -->&S:TDFILE.DBF
- -->TEMP.DBF
- TIME.PRG
- TDALARM.PRG
- -->&S:TDFILE.DBF
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Data Dictionary
-
-
- System: TODO Management System
- Author: Walter J. Kennamer
- Database Structure Summary
- Date: 2/15/86
- Time: 14:22
-
-
- --------------------------------------------------------------------------
-
- File not found--&S:TDFILE.DBF
-
- Used by: TODOMENU.PRG
- Used by: TDSETUP.PRG
- Used by: TODOINP.PRG
- Used by: TODOFIX.PRG
- Used by: TDALARM.PRG
- Used by: TDMARK.PRG
- Used by: TDEDIT.PRG
- Used by: TDBROWSE.PRG
- Used by: TDPURGE.PRG
- Used by: TDREDATE.PRG
- ** Total ** 92
-
- Used by: TODOFIX.PRG
-
- -------------------------------------------------------------------------
-
-
- Structure for database : PRM.SKL
- Number of data records : 20
- Date of last update : 1/ 7/86
- Field Field name Type Width Dec
- 1 LINE Character 80
- ** Total ** 81
-
- Used by: TDPURGE.PRG
-
- -------------------------------------------------------------------------
-
-
- File not found--TEMP.DBF
-
- Used by: TDCALPRM.PRG
- Used by: VERPRT.PRG
-
- ---------------------------------------------------------------------------
-
- Structure for database : TODO.SKL
- Number of data records : 0
- Date of last update : 2/18/85
- Field Field name Type Width Dec
-
- 1 ITEM Character 55
- 2 PRIORITY Character 1
- 3 COMPLETE Character 1
- 4 DATE:ASGN Character 8
- 5 DATE:DUE Character 8
- 6 DATE:COMP Character 8
- 7 LATE Numeric 3
- 8 ITEMTYPE Character 1
- 9 TIME Character 5
- 10 ALARM Character 1
- ** Total ** 92
-
- Used by: TDCALPRM.PRG
-
- ---------------------------------------------------------------------------
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- System: TODO Management System
- Author: Walter J. Kennamer
- Data Dictionary
- Date: 2/15/86
- Time: 14:22
-
-
- --------------------------------------------------------------------------
-
-
- Field Name Type Len Dec Database
- ALARM C 1 0 HIST.DBF
- TODO.SKL
- COMPLETE C 1 0 HIST.DBF
- TODO.SKL
- DATE:ASGN C 8 0 HIST.DBF
- TODO.SKL
- DATE:COMP C 8 0 HIST.DBF
- TODO.SKL
- DATE:DUE C 8 0 HIST.DBF
- TODO.SKL
- ITEM C 55 0 HIST.DBF
- TODO.SKL
- ITEMTYPE C 1 0 HIST.DBF
- TODO.SKL
- LATE N 3 0 HIST.DBF
- TODO.SKL
- LINE C 80 0 PRM.SKL
- PRIORITY C 1 0 HIST.DBF
- TODO.SKL
- TIME C 5 0 HIST.DBF
- TODO.SKL
-
- ---------------------------------------------------------------------------
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Index Summary
-
- System: TODO Management System
- Author: Walter J. Kennamer
- Index Parameter Summary
- Date: 2/15/86
- Time: 14:23
-
-
- -------------------------------------------------------------------------
-
- File not found--&S:DDNDX.NDX
- Used in: TODOMENU.PRG
- Used in: TDSETUP.PRG
- Used in: TODOINP.PRG
- Used in: TODOFIX.PRG
- Used in: TDALARM.PRG
- Used in: TDEDIT.PRG
- Used in: TDBROWSE.PRG
- Used in: TDPURGE.PRG
- Used in: TDREDATE.PRG
- Used in: PRTUNCMP.PRG
- Used in: TODOCAL.PRG
- Used in: EDITEXIT.PRG
- Used in: EDITCHGE.PRG
-
- --------------------------------------------------------------------------
- File not found--DATECOMP.NDX
- Used in: TDPURGE.PRG
-
- --------------------------------------------------------------------------
- HISTDD.NDX -- Indexed on: $(date:due,7,2)+date:due+priority+time
-
- Used in: PRTCMP.PRG
- Used in: TODOCAL.PRG
-
- --------------------------------------------------------------------------
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Format File Summary
-
-
- System: TODO Management System
- Author: Walter J. Kennamer
- Format File Summary
- Date: 2/15/86
- Time: 14:23
-
-
- -------------------------------------------------------------------------
-
- TDEDIT.FMT
- Used in: TODOINP.PRG
-
- -------------------------------------------------------------------------
- TDMARK.FMT
- Used in: TDMARK.PRG
-
- -------------------------------------------------------------------------
- TODOINP.FMT
- Used in: TDEDIT.PRG
- Used in: EDITSRCH.PRG
-
- -------------------------------------------------------------------------
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Report Form Summary
-
- System: TODO Management System
- Author: Walter J. Kennamer
- Report Form File Summary
- Date: 2/15/86
- Time: 14:23
-
-
- --------------------------------------------------------------------------
-
- TDDETCO.FRM
- Used in: PRTUNCMP.PRG
-
- -------------------------------------------------------------------------
- TDDETIN.FRM
- Used in: PRTUNCMP.PRG
-
- -------------------------------------------------------------------------
- TDSUMCO.FRM
- Used in: PRTCMP.PRG
-
- -------------------------------------------------------------------------
- TDSUMIN.FRM
- Used in: PRTCMP.PRG
-
- -------------------------------------------------------------------------
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Procedure Summary
-
- System: Sample Application
- Author: Walter J. Kennamer
- Procedures Summary
- Date: 2/17/86
- Time: 14:11
-
-
- -------------------------------------------------------------------------
-
- ABC.PRC
- Contains: RECPRT
- Called by: ABCMAIN.PRG
- Contains: PRTHDR
- Called by: ABC.PRC
- Contains: SUBHEAD
- Called by: ABC.PRC
-
-
- -------------------------------------------------------------------------
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Variable Cross-Reference
-
- System: Sample Application
- Author: Walter J. Kennamer
- Cross-Reference for Non-Keywords
- Date: 2/18/86
- Time: 14:11
-
-
- -------------------------------------------------------------------------
-
- ADVFUNC
- ABC.PRC 89 89
-
- AREA
- ABC.PRC 122
-
- ARR
- ABC.PRC 111 112 113 114 115 116 117 118 119
-
- ARR0
- ABC.PRC 82
-
- ARR1
- ABC.PRC 83
-
- ARR2
- ABC.PRC 84
-
- ARR3
- ABC.PRC 85
-
- ARR4
- ABC.PRC 86
-
- BASFUNC
- ABC.PRC 88 88
-
- COMMENT
- ABCMAIN.PRG 40 41
- ABC.PRC 143
-
- COMNTTYPE
- ABCMAIN.PRG 41
- ABC.PRC 142
-
- COMPATIB
- ABC.PRC 94 94
-
- D
- ABCMAIN.PRG 29
-
- DEVICE
- ABCMAIN.PRG 47 53
-
-
- D DOLLAR
- ABC.PRC 41 47 105 107 206
-
- D TYPE
- ABC.PRC 41 46 75 76 213 216 219 222 225 228
- 231 234
-
- FIELDTEST
- ABC.PRC 98
-
- INSTRUCT
- ABC.PRC 90 90
-
- LOSS
- ABC.PRC 91 91
-
- MANUAL
- ABC.PRC 87 87
-
- MESSAGES
- ABC.PRC 92 92
-
- MFLDTEST
- ABC.PRC 99 101 120
-
- MNAME
- ABC.PRC 126 130 134
-
- MTYPE
- ABC.PRC 41 45 73 78
-
- NAME
- ABCMAIN.PRG 41 44
- ABC.PRC 58 104 126 134 163
-
- OVERALL
- ABC.PRC 95 95
-
- PERFORM
- ABC.PRC 93 93
-
- PRICE
- ABC.PRC 106 109
-
- PRTHDR
- ABC.PRC 66 138 167
-
- QUARTER
- ABC.PRC 121
-
- RECPRT
- ABCMAIN.PRG 51
- ABC.PRC 30
-
- ABC.PRC
-
- ABCMAIN.PRG 30
-
- SOFTWARE
- ABCMAIN.PRG 43 44
- ABC.PRC 55 58 151 160 163
-
- SUBHEAD
- ABC.PRC 74 210
-
- TCOL
- ABCMAIN.PRG 37
- ABC.PRC 41 43 75 76 104 106 109 111 112 113
- 114 115 116 117 118 119 120 121 122 142 143
- 184 185 186 187 188 189 190 191 192 193 194
- 195 196 197 198 199 200 201 202 203 204
-
- TLINE
- ABCMAIN.PRG 37
- ABC.PRC 41 42 65 75 76 77 77 104 106 109
- 111 112 113 114 115 116 117 118 119 120 121
- 122 132 132 137 142 143 147 147 155 155 178
- 184 185 186 187 188 189 190 191 192 193 194
- 195 196 197 198 199 200 201 202 203 204 205
- 205
-
- TPAGECTR
- ABCMAIN.PRG 37
- ABC.PRC 41 44 179 179 184
-
- T ADVFUNC
- ABC.PRC 89 113
-
- T BASFUNC
- ABC.PRC 88 112
-
- T COMPATIB
- ABC.PRC 94 118
-
- T INSTRUCT
- ABC.PRC 90 114
-
- T LOSS
- ABC.PRC 91 115
-
- T MANUAL
- ABC.PRC 87 111
-
- T MESSAGES
- ABC.PRC 92 116
-
- T OVERALL
- ABC.PRC 95 119
-
- T PERFORM
- ABC.PRC 93 117